Build
We had limited opportunities to laser cut parts,
so it was imperative that our robot's various components fit well
together. The physical design was split into two tiers: the chassis and
the pitching mechanism. We designed both tiers as pegboards so
components could be screwed onto various locations. We connected the
tiers with threaded shafts.
Chassis
The pegboard design allowed us to mount the
chassis parts where we wanted. We primarily needed to mount the drive DC
motors to the chassis. In order to do this, we designed motor and
bearing mounts for the drive motors and screwed them to the lower tier.
The chassis tier also held the IR tape sensors below the board. The
cutouts on the side allowed space to mount the wheels and the large
holes were for the ball casters.
Pitching Mechanism
Our pitching mechanism featured a revolver to
drop loaded balls into a chute and a flywheel to shoot them. In order to
conserve horizontal space, we located the chute below the stepper motor
that iterated the revolver. The flywheel itself was two foam wheels
glued together and we placed it at the radius of one of the bends in the
chute.
Most of the parts to the mechanism were laser cut duron. This included the side panels, the two motor mounts, and additional structural support. The revolver was laser cut from a sheet of foamcore. We made the chute from a strip of scored, flexible foamcore and mounted it to the duron side panels. Lastly, we made bushings for the pitching DC motor from thin, drilled blocks of aluminum.
Most of the parts to the mechanism were laser cut duron. This included the side panels, the two motor mounts, and additional structural support. The revolver was laser cut from a sheet of foamcore. We made the chute from a strip of scored, flexible foamcore and mounted it to the duron side panels. Lastly, we made bushings for the pitching DC motor from thin, drilled blocks of aluminum.
CAD Model Gallery
Lessons Learned
We learned a great deal from this project. In hindsight, here are some tips for those taking this class in the future:
1. Put fuses in your power circuit! We initially didn't have one in place, but the TAs insisted (and forced us to do so). This proved to be beneficial because we blew 3 fuses at one point due to a loose wire creating a short circuit.
2. Creating an accurate and repeatable line following robot is extremely difficult. Our navigation strategy relied solely on line following, which we found to be much more difficult than using the alternatives such as ultrasonic sensors or IR beacon sensing. We and many teams had to change our whole strategy very close to the checkoff deadline because of this.
3. Hot gluing should not be the default method of building mounts for motors. Careful thought into how to mount motors will save a lot of debugging time.
4. Clean wiring and accessible placement of circuit boards when building your robot is a must. When we ran into wire connection issues, we had to deal with long, unlabeled wires.That is not something you want to deal with at 3am when you run into hardware problems.
5. Keep track of your microcontroller timers and how they are used. If you have multiple components using the same timer, make sure you relinquish and give control of them appropriately.
6. Having a DC motor driver that has an active braking mode is very helpful when trying to precisely stop your robot when a certain event occurs (i.e. detecting a line, falling a certain distance from the wall with the ultrasonic sensors, etc.). To make up for the fact that our driver did not have an active braking mode, we had to reverse the motor speed at high PWM for a short duration (long enough to stop but short enough not to go in the opposite direction).
7. Omni-wheels seem to give more controlled motions for rotations, going forward, and reversing. Although in theory 3 omni-wheels are enough for all motion, 4 omni-wheels appear easier to calibrate and control. These are suggestions for future teams based on observations of other robots that worked very robustly.
1. Put fuses in your power circuit! We initially didn't have one in place, but the TAs insisted (and forced us to do so). This proved to be beneficial because we blew 3 fuses at one point due to a loose wire creating a short circuit.
2. Creating an accurate and repeatable line following robot is extremely difficult. Our navigation strategy relied solely on line following, which we found to be much more difficult than using the alternatives such as ultrasonic sensors or IR beacon sensing. We and many teams had to change our whole strategy very close to the checkoff deadline because of this.
3. Hot gluing should not be the default method of building mounts for motors. Careful thought into how to mount motors will save a lot of debugging time.
4. Clean wiring and accessible placement of circuit boards when building your robot is a must. When we ran into wire connection issues, we had to deal with long, unlabeled wires.That is not something you want to deal with at 3am when you run into hardware problems.
5. Keep track of your microcontroller timers and how they are used. If you have multiple components using the same timer, make sure you relinquish and give control of them appropriately.
6. Having a DC motor driver that has an active braking mode is very helpful when trying to precisely stop your robot when a certain event occurs (i.e. detecting a line, falling a certain distance from the wall with the ultrasonic sensors, etc.). To make up for the fact that our driver did not have an active braking mode, we had to reverse the motor speed at high PWM for a short duration (long enough to stop but short enough not to go in the opposite direction).
7. Omni-wheels seem to give more controlled motions for rotations, going forward, and reversing. Although in theory 3 omni-wheels are enough for all motion, 4 omni-wheels appear easier to calibrate and control. These are suggestions for future teams based on observations of other robots that worked very robustly.